Linux管理

推荐列表 站点导航

当前位置:首页 > 服务器技术 > Linux管理 >

Linux系统自动删除文件(web项目删除日志)

来源:网络整理  作者:wy  发布时间:2020-12-23 15:06
最近手上有一个项目,生成的日志贼快,基本每天都是1~2g,一般一个星期左右项目就打不开了,提示内存满了,然后...

最近手上有一个项目,生成的日志贼快,基本每天都是1~2g,一般一个星期左右项目就打不开了,提示内存满了,然后就要去删,后来想总是这样一直删不行啊,然后就查资料发现可以让linux自己去定期帮我删。

 

1.删除文件命令:

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;

实例命令:

find /opt/soft/log/ -mtime +30 -name "IT之家.log" -exec rm -rf {} \;

说明:

将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:

find:linux的查找命令,用户查找指定条件的文件;

/opt/soft/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+30:查找30天前的文件,这里用数字代表天数;

"IT之家.log":希望查找的数据类型,"IT之家.jpg"表示查找扩展名为jpg的所有文件,"IT之家"表示查找所有文件,这个可以灵活运用,举一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} \; :固定写法,一对大括号+空格+\+; 

 

2.计划任务:

若嫌每次手动执行语句太麻烦,可以将这小语句写到一个可执行shell脚本文件中,再设置cron调度执行,那就可以让系统自动去清理相关文件。

2.1.创建shell:

touch /opt/soft/bin/auto-del-30-days-ago-log.sh

创建

chmod +x auto-del-30-days-ago-log.sh

分配权限

2.2.编辑shell脚本:

vi auto-del-30-days-ago-log.sh

编辑auto-del-30-days-ago-log.sh文件如下:

#!/bin/sh

find /opt/soft/log/ -mtime +1 -name "IT之家.log" -exec rm -rf {} \;

ok,保存退出(:wq)。

2.3.计划任务:

#crontab -e

将auto-del-30-days-ago-log.sh执行脚本加入到系统计划任务,到点自动执行

输入:

10 0 IT之家 IT之家 IT之家 /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

这里的设置是每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务了。

设置以后就再也不用担心日志会满了。

相关热词: Linux

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/server/guanli/8212.shtml

相关文章
Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

Linux系统自动删除文件(web项目删除日志)

2020-12-23 编辑:wy

最近手上有一个项目,生成的日志贼快,基本每天都是1~2g,一般一个星期左右项目就打不开了,提示内存满了,然后就要去删,后来想总是这样一直删不行啊,然后就查资料发现可以让linux自己去定期帮我删。

 

1.删除文件命令:

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;

实例命令:

find /opt/soft/log/ -mtime +30 -name "IT之家.log" -exec rm -rf {} \;

说明:

将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:

find:linux的查找命令,用户查找指定条件的文件;

/opt/soft/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+30:查找30天前的文件,这里用数字代表天数;

"IT之家.log":希望查找的数据类型,"IT之家.jpg"表示查找扩展名为jpg的所有文件,"IT之家"表示查找所有文件,这个可以灵活运用,举一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} \; :固定写法,一对大括号+空格+\+; 

 

2.计划任务:

若嫌每次手动执行语句太麻烦,可以将这小语句写到一个可执行shell脚本文件中,再设置cron调度执行,那就可以让系统自动去清理相关文件。

2.1.创建shell:

touch /opt/soft/bin/auto-del-30-days-ago-log.sh

创建

chmod +x auto-del-30-days-ago-log.sh

分配权限

2.2.编辑shell脚本:

vi auto-del-30-days-ago-log.sh

编辑auto-del-30-days-ago-log.sh文件如下:

#!/bin/sh

find /opt/soft/log/ -mtime +1 -name "IT之家.log" -exec rm -rf {} \;

ok,保存退出(:wq)。

2.3.计划任务:

#crontab -e

将auto-del-30-days-ago-log.sh执行脚本加入到系统计划任务,到点自动执行

输入:

10 0 IT之家 IT之家 IT之家 /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

这里的设置是每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务了。

设置以后就再也不用担心日志会满了。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/server/guanli/8212.shtml

相关文章

风云图片

推荐阅读

返回Linux管理频道首页